To increase the storage capacity of magnetic hard disk drives, lengths of bits on a disk continue to decrease. This improves capacity, as the smaller a bit the more a disk can hold, but it also causes some difficulties, such as an increase in intersymbol interference and an increase in a bit error rate. To address some of these difficulties, coding schemes were developed that use more bits to encode the data. These conventional coding schemes, however, balance several characteristics, such as self-clocking, code rates, number of transitions, and run-lengths. This results in a compromise that optimizes overall performance at the expense of lower user bit density.
One example of these conventional coding schemes is the Manchester code, which encodes one bit of binary data to one of two symbols having four bits, as described in Table 1.
TABLE 1Binary DataSymbols0001111100
The Manchester code provides a code rate of 1/4, has DC-free patterns, and is capable of being used in a preamble of servo data for timing and gain adjustment because it is periodic. However, the Manchester code includes one transition per symbol, leading to a large number of transitions in the encoded binary data. The large number of transitions becomes critical in magnetic hard disk drives with small bit lengths because it decreases signal-to-noise due to a dominant portion of noise sourced from transition jitter. As a result, the large number of transitions result in higher bit error rates.
Furthermore, conventional magnetic hard disk drives use a continuous time filter (CTF) operating in a differentiator mode to remove noise in the channel. The CTF improves performance of the Manchester code but may reduce performance with other codes.
This background description is provided for the purpose of generally presenting the context of the disclosure. Unless otherwise indicated herein, material described in this section is neither expressly nor impliedly admitted to be prior art to the present disclosure or the appended claims.